//package com.sjh.lib_app.qrCode
//
//import android.Manifest
//import android.app.Activity
//import android.content.DialogInterface
//import android.content.Intent
//import android.content.pm.PackageManager
//import android.os.Bundle
//import android.text.method.LinkMovementMethod
//import android.widget.LinearLayout
//import android.widget.TextView
//import androidx.appcompat.app.AlertDialog
//import androidx.core.content.ContextCompat
//import com.alibaba.android.arouter.facade.annotation.Route
//import com.blankj.utilcode.util.PermissionUtils
//import com.blankj.utilcode.util.SpanUtils
//import com.google.zxing.integration.android.IntentIntegrator
//import com.sjh.baseutils.dp
//import com.sjh.baseutils.loge
//import com.sjh.baseutils.toast
//import com.sjh.lib_app.baseui.BaseActivity
//import com.sjh.lib_app.R
//import com.sjh.lib_app.event.QrCodeResult
//import org.greenrobot.eventbus.EventBus
//
//@Route(path = "/app/qrCode1", name = "二维码扫描页面")
//class QrCodeActivity : BaseActivity() {
//    override fun onCreateRootView() = LinearLayout(this)
//
//    override fun onInitView(savedInstanceState: Bundle?) {
//        if(ContextCompat.checkSelfPermission(this,Manifest.permission.CAMERA) == PackageManager.PERMISSION_GRANTED){
//            startQrCode()
//        }else{
//            val view = TextView(this)
//            view.setPadding(20.dp.toInt(), 10.dp.toInt(), 20.dp.toInt(), 10.dp.toInt())
//            view.textSize = 14f
//            view.text =
//                SpanUtils()
//                    .append("为了能正常使用二维码扫描功能，我们需要您提供相机使用权限").create()
//            view.movementMethod = LinkMovementMethod.getInstance()
//            val ad = AlertDialog.Builder(this, R.style.AppBDAlertDialog).setTitle("权限申请提示")
//                .setView(view).setNegativeButton("不同意") { _, _ ->
//                    finish()
//            }.setPositiveButton("同意") { _, _ ->
//                    PermissionUtils.permission(*arrayOf(Manifest.permission.CAMERA))  //拒绝了权限，但是没有永久性拒绝
//                        .rationale { activity, shouldRequest ->
//                            "权限被拒绝".loge()
//                            shouldRequest.again(true)
//                        }.callback(object : PermissionUtils.FullCallback {
//                            override fun onGranted(granted: MutableList<String>) {
//                                "权限申请通过".loge()
//                                startQrCode()
//                            }
//
//                            override fun onDenied(deniedForever: MutableList<String>, denied: MutableList<String>) {
//                                "权限申请未通过".loge()
//                                if(deniedForever.isNotEmpty()){
//                                    val permissAlertDialog = AlertDialog
//                                        .Builder(this@QrCodeActivity, R.style.AppBDAlertDialog)
//                                        .setTitle("权限申请提示")
//                                        .setMessage("相机权限被拒绝,请手动打开相机权限")
//                                        .setPositiveButton("确定") { dialogInterface: DialogInterface, i: Int ->
//                                            PermissionUtils.launchAppDetailsSettings()
//                                            finish()
//                                        }.create()
//                                    permissAlertDialog.setCancelable(false)
//                                    permissAlertDialog.show()
//                                }else{
//                                    finish()
//                                }
//
//                            }
//                        }).request()
//
//                }.create()
//            ad.setCancelable(false)
//            ad.show()
//        }
//
//    }
//
//    private fun startQrCode() {
//        val intentIntegrator = IntentIntegrator(this)
//        //不存储扫描结果图片
//        intentIntegrator.setBarcodeImageEnabled(false)
//        // 开始扫描
//        intentIntegrator.initiateScan()
//    }
//
//    override fun initListener() {
//    }
//
//    override fun initData() {
//    }
//
//    override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
//        super.onActivityResult(requestCode, resultCode, data)
//        val result = IntentIntegrator.parseActivityResult(requestCode, resultCode, data)
//        if (result == null) {
//            finish()
//            return
//        }
//        if (resultCode == Activity.RESULT_CANCELED) {
//            "取消扫描".toast()
//            finish()
//            return
//        }
//        if (result.contents.isEmpty()) {
//            if (result.contents.isEmpty()) "扫码失败,请重试".toast()
//        } else {
//            EventBus.getDefault().post(QrCodeResult(result.contents))
//        }
//        finish()
//    }
//
//}